<template>
	<div>
		<city-header></city-header>
		<city-search :cities="cities"></city-search>
		<city-list :cities="cities" :hot="hotCities" :letter="letter"></city-list>
		<city-alphabet :cities="cities" @change="handleLetterChange" ></city-alphabet>
	</div>
</template>

<script type="text/javascript">
	import axios from 'axios'
	import CityHeader from './components/Header'
	import CitySearch from './components/Search'
	import CityList from './components/List'
	import CityAlphabet from './components/Alphabet'
	export default {
		name: 'city',
		components:{
			CityHeader,
			CitySearch, 
			CityList,
			CityAlphabet
		},
		data(){
			return {
				cities: {},
				hotCities: [],
				letter: '',
			}
		},
		methods: {
			getCityInfo(){
				axios.get('/api/city.json').then(this.handleGetCityInfoSucc)
			},
			handleGetCityInfoSucc(res){
				if(res.data && res.data.ret) {
						const data = res.data.data;
						this.cities = data.cities;
						this.hotCities = data.hotCities;
				}
			},
			handleLetterChange(letter){
				this.letter = letter ; 
			},
		},
		mounted() {
			this.getCityInfo()
		}
	};
</script>

<style lang="stylus" scoped>
	
</style>
